package com.candy.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 * @author donglin
 * @Title:
 * @类名: DBTestDriver
 * @date 2021/1/6
 */
public class DBTestDriver {

    public static void main(String[] args) {
//        0、下载jdbc驱动包，将驱动包导入项目。注意：mysql8和mysql5的驱动包版本不通用。
//        1、注册或实例化jdbc的驱动类
//        提供jdbc连接数据库的url字符串、数据库驱动类名、用户名、密码
//        jdbc:mysql固定格式；localhost：表示数据库服务器的访问地址（主机名：ip,其中localhost 127.0.0.1 表示主机）
//       3306：mysql数据库的默认监听客户端的端口号；端口号后边的是连接的数据库的库名
        String url = "jdbc:mysql://localhost:3306/ssm0916? characterEncoding=utf8 & useSSL=false & serverTimezone=UTC & rewriteBatchedStatements=true";
//       数据库驱动类名
        String strDBDriverType="com.mysql.cj.jdbc.Driver";
//        用户名
        String strUserName="root";
//        密码
        String strPwd="123456";
        try {
//        加载数据库驱动类
//        固定写法（反射）
            Class.forName(strDBDriverType);
//        2、获取数据库的连接对象Connection
           Connection conn= DriverManager.getConnection(url,strUserName,strPwd);
//        3、获取数据库操作对象Statement（执行增删改查）
          Statement st= conn.createStatement();
//        4、执行SQL语句，获取数据操作结果或者结果集对象ResultSet
            String strSql="select * from userinfo;";
//            接收返回结果
          ResultSet rs= st.executeQuery(strSql);
//        5、解析结果集对象ResultSet，进行相关的业务处理；
//            使用while循环进行resultSet的解析
//            next方法用于判断，在查询结果集中有没有下一条记录，在开始前，next方法定位在第一条记录之前的位置
            while (rs.next()){
                System.out.print(" "+rs.getObject(1));
                System.out.print(" "+rs.getObject(2));
                System.out.print(" "+rs.getObject(3));
                System.out.println();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }










    }






}
